package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 操作记录对象 operation_record
 * 
 * @author happy
 * @date 2025-10-27
 */
public class OperationRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 学员Id */
    @Excel(name = "学员Id")
    private Long userId;

    /** 操作名称 */
    @Excel(name = "操作名称")
    private String operationName;

    /** 操作状态 */
    @Excel(name = "操作状态")
    private String operationState;

    /** 原因 */
    @Excel(name = "原因")
    private String reson;

    /** 操作时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date operationTime;

    /** 使用时间 */
    @Excel(name = "使用时间")
    private String operationUseTime;

    /** 房间名称 */
    @Excel(name = "房间名称")
    private String roomName;

    /** 设备号 */
    @Excel(name = "设备号")
    private String deviceName;

    /** 学员姓名 */
    @Excel(name = "学员姓名")
    private String userName;

    /** 试题Id */
    @Excel(name = "试题Id")
    private Long stId;

    /** 试题名称 */
    @Excel(name = "试题名称")
    private String stCode;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }

    public void setOperationName(String operationName) 
    {
        this.operationName = operationName;
    }

    public String getOperationName() 
    {
        return operationName;
    }

    public void setOperationState(String operationState) 
    {
        this.operationState = operationState;
    }

    public String getOperationState() 
    {
        return operationState;
    }

    public void setReson(String reson) 
    {
        this.reson = reson;
    }

    public String getReson() 
    {
        return reson;
    }

    public void setOperationTime(Date operationTime) 
    {
        this.operationTime = operationTime;
    }

    public Date getOperationTime() 
    {
        return operationTime;
    }

    public void setOperationUseTime(String operationUseTime) 
    {
        this.operationUseTime = operationUseTime;
    }

    public String getOperationUseTime() 
    {
        return operationUseTime;
    }

    public void setRoomName(String roomName) 
    {
        this.roomName = roomName;
    }

    public String getRoomName() 
    {
        return roomName;
    }

    public void setDeviceName(String deviceName) 
    {
        this.deviceName = deviceName;
    }

    public String getDeviceName() 
    {
        return deviceName;
    }

    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }

    public void setStId(Long stId) 
    {
        this.stId = stId;
    }

    public Long getStId() 
    {
        return stId;
    }

    public void setStCode(String stCode) 
    {
        this.stCode = stCode;
    }

    public String getStCode() 
    {
        return stCode;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("operationName", getOperationName())
            .append("operationState", getOperationState())
            .append("reson", getReson())
            .append("operationTime", getOperationTime())
            .append("operationUseTime", getOperationUseTime())
            .append("roomName", getRoomName())
            .append("deviceName", getDeviceName())
            .append("userName", getUserName())
            .append("stId", getStId())
            .append("stCode", getStCode())
            .toString();
    }
}
